home *** CD-ROM | disk | FTP | other *** search
Text File | 1988-06-14 | 44.3 KB | 1,174 lines |
- Newsgroups: comp.sources.unix
- Subject: COMPLETE REPOST v15i058: A bitmap editor for Suns, Part01/06
- Approved: rsalz@uunet.UU.NET
-
- Submitted-by: Raymond T Kreisel <rayk@sbcs.sunysb.edu>
- Posting-number: Volume 15, Issue 58
- Archive-name: touchup/part01
-
- THIS IS A COMPLETE REPOSTING OF THE ENTIRE PACKAGE.
- NOTE THAT THE ".PAT" FILES WILL HAVE TO BE RENAMED.
-
- [ I didn't repack this, nor try it out. -r$ ]
-
- The following, Touchup, is a bitmap editor (paint program) for Sun
- workstations. It has some of the same features as programs like
- MacPaint. I wrote this program because I could not find any other
- programs for the Sun that would allow you to edit bitmaps (screendumps,
- video images other bitmaps).
-
- ray
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 1 (of 6)."
- # Contents: header.h Makefile INSTALL README touchup.man fixman.sed
- # temp_image touchup.icon
- # fat_cursor
- # strip_icon32x32
- # strip_icon48x48
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f header.h -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"header.h\"
- else
- echo shar: Extracting \"header.h\" \(6800 characters\)
- sed "s/^X//" >header.h <<'END_OF_header.h'
- X
- X/**************************************************************************
- X Touchup a bitmap graphics editor for the Sun Workstation running SunView
- X Copyright (c) 1988 by Raymond Kreisel
- X 1/22/88 @ Suny Stony Brook
- X
- X This program may be redistributed without fee as long as this copyright
- X notice is intact.
- X
- X==> PLEASE send comments and bug reports to one of the following addresses:
- X
- X Ray Kreisel
- X CS Dept., SUNY at Stony Brook, Stony Brook NY 11794
- X
- X UUCP: {allegra, philabs, pyramid, research}!sbcs!rayk
- X ARPA-Internet: rayk@sbcs.sunysb.edu
- X CSnet: rayk@suny-sb
- X (If nobody is home at any of the above addresses try:
- X S72QKRE@TOWSONVX.BITNET )
- X
- X "If I get home before daylight, I just might get some sleep tonight...."
- X
- X**************************************************************************/
- X/**************************************************************************
- X file: header.h
- X purpose: this file has all of the gobals that need to be defined
- X and the proper include files
- X modifications:
- X date: Tue Mar 22 22:04:58 EST 1988
- X author: rayk
- X changes:add comments
- X**************************************************************************/
- X#include <stdio.h>
- X#include <sys/file.h>
- X#include <suntool/sunview.h>
- X#include <suntool/panel.h>
- X#include <suntool/canvas.h>
- X#include <suntool/walkmenu.h>
- X#include <suntool/scrollbar.h>
- X#include <math.h>
- X#include <pixrect/pixrect_hs.h>
- X
- X
- X#define DEFAULT_IMAGE_WID 1152
- X#define DEFAULT_IMAGE_HGT 900
- X
- X
- X#define TEXT 0
- X#define MAGNIFY 1
- X#define SEL_REG 2
- X#define GET_PT 3
- X#define LASO 4
- X#define FFILL 5
- X#define PAINT 6
- X#define DRAW 7
- X#define LINE 8
- X#define ERASE 9
- X#define RECT_H 10
- X#define RECT_F 11
- X#define CIRCLE 12
- X#define OVAL 13
- X#define POLY_H 14
- X#define POLY_F 15
- X
- X#define FLIP_HOR 0
- X#define FLIP_VER 1
- X#define INVERSE 2
- X#define ROTATE 3
- X#define COPY 4
- X#define PASTE 5
- X#define MOVE 6
- X#define CUT 7
- X
- X#define PIX_XOR PIX_SRC^PIX_DST
- X#define MAX_PTS 3000
- X
- X#define MIN(x,y) ((x) < (y) ? (x) : (y))
- X#define MAX(x,y) ((x) > (y) ? (x) : (y))
- X
- X#define MAX_POLY 100
- X
- X#define BRUSH_NO 6
- X
- X#define PATTERN_SIZE 32
- X#define PATTERN_NO 40
- X
- X#define COMMAND_SIZE 48
- X#define COMMAND_NO 16
- X
- X#define MAIN_FONT "/usr/lib/fonts/fixedwidthfonts/screen.r.14"
- X
- X#define MY_pr_destroy(prect) if (prect) pr_destroy(prect);prect=NULL;
- X
- X#define MAINWIN 1
- X#define FATWIN 2
- X#define COLORWIN 3
- X
- X#define MAX_FILE_NAME 120
- X#define DELETE_KEY 127
- X
- X#define SAVE_ALL 0
- X#define SAVE_CUT_PASTE 1
- X
- X#define LOAD_ALL 0
- X#define LOAD_CUT_PASTE 1
- X
- X#define SUNWHITE 0
- X#define SUNBLACK 1
- X
- X#define NILPR ((struct pixrect *)0)
- X
- X#define PALET_BLOCK 15
- X
- X/* constants */
- X#define SCREEN_MAX_X 400
- X#define SCREEN_MAX_Y 400
- X
- Xextern unsigned char red[256],green[256],blue[256];
- Xextern unsigned char temp_red[256],temp_green[256],temp_blue[256];
- Xextern int image_wid,image_hgt,image_depth;
- Xextern int top_x,top_y,bottom_x,bottom_y;
- Xextern int cur_color,grid_size;
- Xextern int magnify_fac,fat_x,fat_y,fat_source_x,fat_source_y;
- Xextern int mouse_left,mouse_middle;
- Xextern int select_pt_x,select_pt_y;
- Xextern int old_x; old_y;
- Xextern int start_x; start_y;
- Xextern char file_name[MAX_FILE_NAME];
- Xextern struct pixrect *cut_buffer_pr,*undo_pr;
- Xextern struct pixfont *main_font;
- Xextern struct pixrect *pattern[];
- Xextern struct pixrect *brushes[];
- Xextern struct pixfont *font_array[];
- Xextern struct pr_pos poly_points[];
- Xextern struct pr_pos ptlist[];
- X
- Xextern struct pixfont *screen_r_7;
- Xextern struct pixfont *screen_r_11;
- Xextern struct pixfont *screen_r_12;
- Xextern struct pixfont *screen_r_14;
- Xextern struct pixfont *screen_b_12;
- Xextern struct pixfont *screen_b_14;
- X
- Xextern struct pixfont *pcfont_b_14;
- Xextern struct pixfont *pcfont_r_14;
- X
- Xextern struct pixfont *cour_b_10;
- Xextern struct pixfont *cour_b_12;
- Xextern struct pixfont *cour_b_16;
- Xextern struct pixfont *cour_b_24;
- X
- Xextern struct pixfont *cour_r_10;
- Xextern struct pixfont *cour_r_12;
- Xextern struct pixfont *cour_r_16;
- Xextern struct pixfont *cour_r_24;
- X
- Xextern struct pixfont *serif_r_10;
- Xextern struct pixfont *serif_r_11;
- Xextern struct pixfont *serif_r_16;
- X
- X
- Xextern Frame base_frame,fat_frame,color_frame;
- Xextern Canvas canvas,fat_canvas,color_canvas;
- Xextern Pixwin *pw,*fat_pw,*color_pw;
- Xextern Scrollbar vertical_sb, horizontal_sb;
- Xextern Panel panel,fat_panel,color_panel,pattern_panel,
- X brush_panel,region_panel,command_panel;
- Xextern Panel_item magnify_cycle, command_choice,text_size_item;
- Xextern Panel_item text_panel,file_panel,brush_choice,mono_cycle,save_cycle,
- X msg_string,color_button,border_cycle,view_cycle,current_pattern,
- X load_cycle,pattern_choice,region_choice,grid_cycle,
- X compress_cycle,undo_button;
- X
- Xextern struct pixrect brush1_pr,brush2_pr,brush3_pr,
- X brush4_pr,brush5_pr,brush6_pr;
- X
- X
- Xextern struct pixrect pattern1_pr,pattern2_pr,pattern3_pr,
- X pattern4_pr,pattern5_pr,
- X pattern6_pr,pattern7_pr,
- X pattern8_pr,pattern9_pr,
- X pattern10_pr,
- X pattern11_pr,pattern12_pr,pattern13_pr,
- X pattern14_pr,pattern15_pr,
- X pattern16_pr,pattern17_pr,
- X pattern18_pr,pattern19_pr,
- X pattern20_pr,
- X pattern21_pr,pattern22_pr,pattern23_pr,
- X pattern24_pr,pattern25_pr,
- X pattern26_pr,pattern27_pr,
- X pattern28_pr,pattern29_pr,
- X pattern30_pr,
- X pattern31_pr,pattern32_pr,pattern33_pr,
- X pattern34_pr,pattern35_pr,
- X pattern36_pr,pattern37_pr,
- X pattern38_pr,pattern39_pr,
- X pattern40_pr;
- X
- Xextern struct pixrect command1_pr,command2_pr,command3_pr,
- X command4_pr,command5_pr,
- X command6_pr,command7_pr,
- X command8_pr,command9_pr,
- X command10_pr,
- X command11_pr,
- X command12_pr,command13_pr,
- X command14_pr,command15_pr,
- X command16_pr;
- X
- Xextern struct pixrect reg_command1_pr,reg_command2_pr,
- X reg_command3_pr,reg_command4_pr,
- X reg_command5_pr,reg_command6_pr,
- X reg_command7_pr,reg_command8_pr;
- X
- Xextern char *malloc();
- Xextern quit();
- Xextern color_handle_event();
- Xextern draw_colormap();
- Xextern color_done();
- Xextern fat_mode();
- Xextern fat_handle_event();
- Xextern fat_parms();
- Xextern fat_update();
- Xextern fat_done();
- Xextern handle_event();
- Xextern load_file();
- Xextern save_file();
- Xextern cut_region();
- Xextern copy_region();
- Xextern paste_region();
- Xextern mouse_parms();
- Xextern change_parms();
- Xextern color_mode();
- Xextern undo_screen();
- Xextern poly_addpt();
- Xextern clear_screen();
- Xextern clean_poly();
- Xextern confirmer();
- Xextern draw_circle();
- Xextern draw_oval();
- Xextern init_colortable();
- Xextern command_handle();
- Xextern region_handle();
- Xextern struct pixrect *my_mem_create();
- Xextern rotate_region();
- Xextern draw_text();
- Xextern fill_mode();
- Xextern move_region();
- Xextern info_init();
- Xextern pattern_define();
- Xextern viewer();
- Xextern select_pattern();
- Xextern char *expand_file_name();
- Xextern make_new_name();
- END_OF_header.h
- if test 6800 -ne `wc -c <header.h`; then
- echo shar: \"header.h\" unpacked with wrong size!
- fi
- # end of overwriting check
- fi
- if test -f Makefile -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"Makefile\"
- else
- echo shar: Extracting \"Makefile\" \(2844 characters\)
- sed "s/^X//" >Makefile <<'END_OF_Makefile'
- XCFLAGS = -O
- XOPTIONS =
- XLIBS = -lsuntool -lsunwindow -lpixrect -lm
- XEXE = touchup
- XOBJ = ffill.o cms_rainbow.o oval.o circle.o confirmer.o fat.o touchup.o \
- X info.o fonts.o brush.o command.o color_palet.o \
- X disk_io.o pattern.o drawing.o interface.o magnify.o
- X
- X
- XSRC = ffill.c cms_rainbow.c oval.c circle.c confirmer.c fat.c touchup.c \
- X info.c fonts.c brush.c command.c color_palet.c \
- X disk_io.c pattern.c drawing.c interface.c magnify.c
- X
- XSH_BASE_DIR = /u13/sr/rayk/touchup
- XSH_PATTERNS_DIR = $(SH_BASE_DIR)/pattern_icons
- XSH_COMMANDS_DIR = $(SH_BASE_DIR)/command_icons
- X
- X
- X
- X################################################################
- X# change these dirs if you move the files
- X################################################################
- XBASE_DIR = $(PWD)
- XPATTERNS_DIR = $(BASE_DIR)
- XCOMMANDS_DIR = $(BASE_DIR)
- XINFO_PICTURE = $(BASE_DIR)/info.image
- XMAN_PAGE= $(BASE_DIR)/touchup.cat
- X###############################################################
- X###############################################################
- X
- X
- X$(EXE): $(OBJ) touchup.cat
- X cc $(CFLAGS) -o $(EXE) $(OBJ) $(OPTIONS) $(LIBS)
- X
- X
- X
- Xlint_it: $(SRC)
- X lint $(SRC) $(OPTIONS) $(LIBS)
- X
- X
- Xinterface.o :
- X cc $(CFLAGS) -mc68020 -c interface.c -I$(PATTERNS_DIR)
- X
- Xpattern.o:
- X cc $(CFLAGS) -mc68020 -c pattern.c -I$(PATTERNS_DIR)
- X
- Xbrush.o:
- X cc $(CFLAGS) -mc68020 -c brush.c -I$(PATTERNS_DIR)
- X
- Xcommand.o:
- X cc $(CFLAGS) -mc68020 -c command.c -I$(COMMANDS_DIR)
- X
- Xfat.o:
- X cc $(CFLAGS) -mc68020 -c fat.c $(OPTIONS) -DNO_FASTAN
- X
- Xinfo.o:
- X cc $(CFLAGS) -mc68020 -c info.c $(OPTIONS) -DINFO_IMAGE='"$(INFO_PICTURE)"' -DHELP_FILE='"$(MAN_PAGE)"'
- X
- Xtouchup.o:
- X cc $(CFLAGS) -mc68020 -c touchup.c $(OPTIONS)
- X
- X
- Xtouchup.cat: touchup.man
- X nroff -man $(BASE_DIR)/touchup.man | sed -f fixman.sed > $(BASE_DIR)/touchup.cat
- X
- X
- Xshar:
- X uuencode info.image info.image > temp_image
- X shar -b -n1 -e6 *.h Makefile INSTALL README touchup.man \
- X fixman.sed temp_image touchup.icon \
- X $(SH_PATTERNS_DIR)/fat_cursor \
- X $(SH_PATTERNS_DIR)/strip_icon32x32 \
- X $(SH_COMMANDS_DIR)/strip_icon48x48 > touchup.shar1
- X shar -b -n2 -e6 $(SH_COMMANDS_DIR)/*.cicon > touchup.shar2
- X shar -b -n3 -e6 $(SH_PATTERNS_DIR)/pattern[1-2]*.icon > touchup.shar3
- X shar -b -n4 -e6 $(SH_PATTERNS_DIR)/pattern[3-9]*.icon \
- X $(SH_PATTERNS_DIR)/brush[1-9].icon > touchup.shar4
- X shar -b -n5 -e6 [a-h]*.c > touchup.shar5
- X shar -b -n6 -e6 [h-z]*.c > touchup.shar6
- X rm -f temp_image
- X
- Xinstall:
- X @echo -n "The pattern directory is :"
- X @echo $(PATTERNS_DIR)
- X @echo -n "The command directory is :"
- X @echo $(COMMANDS_DIR)
- X @echo
- X @echo "if these are incorrect change the defintions in the Makefile"
- X @echo
- X touch info.image
- X chmod 777 info.image
- X uudecode temp_image
- X $(COMMANDS_DIR)/strip_icon48x48
- X $(PATTERNS_DIR)/strip_icon32x32
- X @echo
- X @echo
- X @echo "Now just type: make"
- X @echo
- X
- X
- X
- Xmy_backup:
- X cp *.sh *.man *.c *.h Makefile backup
- END_OF_Makefile
- if test 2844 -ne `wc -c <Makefile`; then
- echo shar: \"Makefile\" unpacked with wrong size!
- fi
- chmod +x Makefile
- # end of overwriting check
- fi
- if test -f INSTALL -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"INSTALL\"
- else
- echo shar: Extracting \"INSTALL\" \(883 characters\)
- sed "s/^X//" >INSTALL <<'END_OF_INSTALL'
- X
- X
- X How to install Touchup
- X
- X
- X Unpack all of the archive files into the same directory.
- X When you unpack the first archive you will get a message like:
- X
- X Found 1 control char in "fixman.sed"
- X
- X Do not worry about this, just continue with the instalation.
- X After you have unpacked all of the archives then type the
- X following command:
- X
- X % make install
- X
- X you will get messages here
- X
- X then just type the following:
- X
- X % make
- X
- X
- X when this is done the excutable file will be called touchup
- X To run it just type:
- X
- X % touchup
- X
- X
- X and then you be in the Touchup bitmap editor.
- X
- X There is a standard man page in the file touchup.man
- X or you can just press the "view" button on the upper
- X left hand side of the control panel to display the man page.
- X
- X If you are using Touchup on a color Sun you may want to
- X use the -n option (you can read about this in the man page)
- X so the it will run faster.
- END_OF_INSTALL
- if test 883 -ne `wc -c <INSTALL`; then
- echo shar: \"INSTALL\" unpacked with wrong size!
- fi
- # end of overwriting check
- fi
- if test -f README -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"README\"
- else
- echo shar: Extracting \"README\" \(1278 characters\)
- sed "s/^X//" >README <<'END_OF_README'
- X/**************************************************************************
- X Touchup a bitmap graphics editor for the Sun Workstation running SunView
- X Copyright (c) 1988 by Raymond Kreisel
- X 1/22/88 @ Suny Stony Brook
- X
- X This program may be redistributed without fee as long as this copyright
- X notice is intact.
- X
- X==> PLEASE send comments and bug reports to one of the following addresses:
- X
- X Ray Kreisel
- X CS Dept., SUNY at Stony Brook, Stony Brook NY 11794
- X
- X UUCP: {allegra, philabs, pyramid, research}!sbcs!rayk
- X ARPA-Internet: rayk@sbcs.sunysb.edu
- X CSnet: rayk@suny-sb
- X (If nobody is home at any of the above addresses try:
- X S72QKRE@TOWSONVX.BITNET )
- X
- X "If I get home before daylight, I just might get some sleep tonight...."
- X
- X**************************************************************************/
- X
- X Be sure to read the instructions in INSTALL first.
- X
- X There in is a manual in file touchup.man
- X
- X
- X After you have installed touchup these are the files
- X you must have in order to run the execuatble code:
- X
- X touchup*
- X info.image
- X touchup.cat
- X
- X
- X The rest of the files can be removed.
- X
- X If you are using Touchup on a color Sun you may want to
- X use the -n option (you can read about this in the man page)
- X so the it will run faster.
- END_OF_README
- if test 1278 -ne `wc -c <README`; then
- echo shar: \"README\" unpacked with wrong size!
- fi
- # end of overwriting check
- fi
- if test -f touchup.man -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"touchup.man\"
- else
- echo shar: Extracting \"touchup.man\" \(17251 characters\)
- sed "s/^X//" >touchup.man <<'END_OF_touchup.man'
- X.TH Touchup 1 "26 March 1988"
- X.SH NAME
- Xtouchup \- a bitmap graphics editor for Sun raster files
- X.SH SYNOPSIS
- X.B touchup
- X[ \fB\-x width ]
- X[ \fB\-y height ]
- X[ \fB\-n ]
- X[ \fB\-p ]
- X.SH DESCRIPTION
- X.IX "touchup command" "" "\fLtouchup\fP \(em bitmap editor"
- X.IX edit bitmaps
- X.IX "screen bitmaps" edit
- X.LP
- X.I Touchup
- Xis an editor for bitmap raster files in \fISun raster file\fP\^(5)\fR
- Xformat.
- X.SH OPTIONS
- X.IP \fB\-x
- X\fItouchup\fP will start up with the width of the drawing area given
- Xby the argument after -x.
- XOtherwise, the default drawing area has a width of 1152 pixels
- X.IP \fB\-y
- X\fItouchup\fP will start up with the height of the drawing area given
- Xby the argument after -y.
- XOtherwise, the default drawing area has a height of 900 pixels
- X.IP \fB\-p
- X\fItouchup\fP will start up with a drawing area of 900x1152 if this option
- Xis used.
- XThese dimensions are more suitable for printing out pages of text on the
- Xlaser printer, since drawing area is in proportion to normal paper size.
- X.IP \fB\-n
- XThis option disables the 'undo' command so that \fItouchup\fP
- Xwill require less memory. The use of this
- Xoption will make the color version much more
- Xusable, by freeing up a large amount of the memory.
- X
- X.SH COMMANDS
- X.LP
- XTo edit a bitmap, type `\fBtouchup\fP'.
- XA \fIraster file\fP
- Xfile name may be typed into the file name field once the program has started.
- XIf it exists, the \fIraster file\fP must be in \fISun Rasterfile\fP\^(5) format.
- XWhen the program starts, it displays a single large window containing
- Xfive subwindows.
- XFrom top to bottom, the five subwindows are:
- X.IP "1)" 5
- XThe topmost subwindow, an option subwindow,
- Xallows you to set global parameters for the entire drawing area and
- Xspecify operations for loading and saving files.
- XThe options are:
- X.RS
- X.IP "\fB(Load)\fP" 10
- XRead in the raster file specified in the file name field.
- X.IP "\fBLoad:Cut/Paste buffer\fP" 10
- XWhen the load cycle is set to this mode all raster files will be loaded into
- Xthe Cut/Paste buffer, then it can be previewed with the "view" feature.
- XNote: When a color image is loaded in the Cut/Paste buffer the color map for
- Xthat image is lost. The colormap is only loaded in when a color image is
- Xloaded on to the drawing area, with option 'Load:entire image'.
- X.IP "\fBLoad:entire image\fP" 10
- XWhen the load cycle is set to this mode all raster files will be loaded into
- Xthe drawing area and the size of the drawing area will be restricted to the
- Xsize of the raster file. If the image has depth greater then one then the
- Xcolormap is loaded in so that the can be properly view.
- X.IP "\fB(Save)\fP"
- XWrite the current raster file onto disk with the name in the file name field.
- X.IP "\fBSave:Cut/Paste buffer\fP" 10
- XWhen the save cycle is set to this mode only the current Cut/Paste buffer
- Xwill be saved to the file in the filename field.
- X.IP "\fBSave:entire image\fP" 10
- XWhen the save cycle is set to this mode the current image in the drawing
- Xarea will be saved to a file in the filename field.
- X.IP "\fBSave:standard format\fP" 10
- XWhen the save cycle is set to this mode the current image
- Xwill be saved out in the standard Sun raster file format.
- X.IP "\fBSave:compress\fP" 10
- XWhen the save cycle is set to this mode the current image
- Xwill be saved out in the Sun raster file
- XBYTE_ENCODED format. This will often compress the file to one half
- Xthe normal size. One of the problems with saving a file in compressed
- Xformat is that the 'screenload' command will then not be able to read the
- Xfile.
- X.IP "\fB(Quit)\fP"
- XQuit the program.
- X.IP "\fBFile name:\fP"
- XThe file name of the current bitmap. When you are typing in the file name
- Xthe ESC key can be used to do standard csh filename completion.
- X.IP "\fBGrid:none\fP"
- XWhen Grid is set to some value other that "none" every bitmap operation
- Xwill be forced to the closest grid point. The number after Grid is the number of
- Xpixels between each grid point. The actual grid is not visible.
- X.IP "\fB(undo)\fP"
- XWhen this button pressed the last operation effecting the drawing area will be removed.
- X.IP "\fB(view)\fP"
- XWhen this button is pressed a window will be displayed containing
- Xone of two possible images, depending on the "view" cycle.
- X.IP "\fBview:man page\fP"
- XThis will set the view to the manual page entry for Touchup, so that when
- Xthe "view" button is pressed, a window containing the manual page
- Xwill be displayed.
- X.IP "\fBview:Cut/Paste\fP"
- XThis will set the view to the current Cut/Paste buffer, so that when
- Xthe "view" button is pressed, a window with current Cut/Paste buffer
- Xwill be displayed.
- X.IP "\fBview:Touchup info\fP"
- XThis will set the view to the copyright notice for touchup, so that when
- Xthe "view" button is pressed, a window with the copyright notice
- Xwill appear.
- X.IP "\fBBorders:Yes\fP"
- XThis cycle determines is borders are drawn on filled reactangles
- Xand filled polygons.
- X.IP "\fBDraw color:Black\fP"
- XThis cycle determines the color for DRAWing points, the border of
- Xfilled reactangles, the border of filled polygons, the FILL color, and lines.
- X.IP "\fBtext string:\fP"
- XThis is the string that is copied to the bitmap when the TEXT command is used.
- X.IP "\fBfonts:ABC\fP"
- XThis cycle determines the font for the text when the TEXT command is used.
- X.IP "\fBMessages\fP"
- XThe bottom line of this window is a message subwindow, which displays
- Xmessages, prompts, and warnings.
- X.RE
- X.RE
- X.IP "2)" 5
- XThe second subwindow, the subwindow on the lefthand edge of the main window,
- Xis the pattern subwindow. This subwindow contains all of the paint
- Xand fill patterns that can be used to draw pictures.
- XThe current pattern is selected by placing the mouse cursor on top of
- Xthe pattern that you want and pressing the LEFT mouse button.
- X.IP "\fB(Define pattern)\fP"
- XBefore this button is pressed, select a point on the drawing area that
- Xyou wish to have as a new paint pattern, then press "Define pattern" the
- Xarea centered at the selected point will then become the last paint pattern
- Xin the pattern window.
- X.IP "3)" 5
- XThe third subwindow is the command subwindow. This window is the one that
- Xis on the right hand side of the main window. To select a command place the
- Xthe mouse cursor on top of the command that you want and press the LEFT
- Xmouse button.
- X.IP "\fBTEXT\fP" 10
- XFirst move to the Text string field in the topmost window and type in the
- Xtext that you wish to place on the bitmap. Then use the SELECT POINT mode
- Xto select a point within the drawing area. Once both of these two things are
- Xdone press the TEXT command icon with "ABC" on it, and the current
- Xtext string will be placed on to the bitmap in the currently selected font.
- X.IP "\fBMAGNIFY\fP" 10
- XFirst use the SELECT POINT mode to select a point within the drawing area that
- Xyou wish to look at in detail. Then press the command icon for MAGNIFY
- Xand a new subwindow with a magnified view of the selected area will be displayed.
- XIn the top line of the MAGNIFY subwindow you can set the magnification to any
- Xvalue between one and twenty. When the mouse cursor is within the magnified
- Xdrawing area, there are three possible commands. The LEFT mouse button will
- Xchange the current bit to the opposite color and then continue to draw in
- Xthat color. When the MIDDLE mouse button is held down and moved, it will change
- Xthe area of the bitmap that is magnified. When you are editing color images
- Xthe RIGHT mouse button will change the current drawing color to the color of
- Xthe pixel the mouse cursor is on top of.
- X.IP "\fBSELECT REGION\fP" 10
- XFirst click the picture of the box made of dotted lines.
- XThen move to the drawing area and press the LEFT button when
- Xthe cursor is at the desired position and continue to hold the
- XLEFT button down while you drag the box to the opposite corner of the
- Xregion you wish to select.
- XIf you double click SELECT REGION then the entire drawing area will be
- Xselected.
- XIf you need to select an area bigger than the drawing window,
- Xfirst select one of the corners of the region with the LEFT mouse
- Xbutton. Then scroll the window so that the other corner of the
- Xregion you want is now visible. Place the cursor on top of the
- Xother corner of the region you want and press the the MIDDLE
- Xmouse button.
- X.IP "\fBSELECT POINT\fP" 10
- XFirst click the picture of the cross hairs.
- XThen press the LEFT mouse button down and a cross hair
- Xwill appear; move the mouse while holding the LEFT mouse button down and the
- Xcross hair will follow it. Releasing the
- Xthe button will leave the cross hair.
- X.IP "\fBLASSO\fP"
- XFirst select the picture of the LASSO, (right above the paint brush), then
- Xmove the mouse to the drawing area. To LASSO a object hold down the LEFT mouse
- Xbutton and encircle the object that you wish to capture while the LEFT
- Xbutton is pressed. When you let go of the LEFT mouse button the selected
- Xobject will first be highlighted and then it will be copied into the Cut/Paste
- Xbuffer. Then you will be placed into MOVE mode, this function is documented
- Xin the Cut/Paste buffer operations section.
- X.IP "\fBFLOOD FILL\fP"
- XFirst select a point on the drawing area that is inside a closed polygon region.
- XWhen the FLOOD FILL icon is pressed, it will start at the selected point and
- Xfill outward until it hits a border.
- XNote: FLOOD FILL will fill with the current DRAW COLOR value (on a mono sun).
- XWhen FLOOD FILL is used on a color sun it will fill with the currently selected
- Xcolor and it will fill until it gets to a border made of the current color.
- X.IP "\fBPAINT\fP"
- XOnce the PAINT command is selected, whenever the LEFT mouse button is pressed,
- Xa region of the drawing area will be painted with the current pattern and
- Xthe size of this region will be determined by the current brush size.
- XWhenever the paint command is selected a brush menu will appear in the window
- Xbelow the command subwindow. The current brush size can be set by placing the
- Xcursor on top of a brush size within the brush menu and pressing the LEFT
- Xmouse button.
- X.IP "\fBDRAW POINTS\fP"
- XOnce this command is selected, whenever the LEFT mouse button is pressed within the
- Xdrawing area a single pixel of the current DRAW COLOR will be placed at
- Xthe location of the mouse cursor.
- X.IP "\fBLINE\fP"
- XLeft button down marks the end point of a
- Xline; moving with the button down
- Xrubber bands a line; releasing button
- Xdraws the line.
- X.IP "\fBERASE\fP"
- XPressing the LEFT button down will ERASE a small square region and
- Xmoving with the button down will
- Xcontinue ERASing until the LEFT button
- Xis released. If a region is already selected when the ERASE icon is pressed
- Xthe specified region will be erased. If you double click the ERASE icon the
- Xentire drawing area will be erased.
- X.IP "\fBRECTANGLE\fP"
- XLike \fBLINE\fP except draws a rectangle.
- X.IP "\fBRECTANGLE Filled\fP"
- XLike \fBLINE\fP except draws a rectangle that is filled with the currently
- Xselected pattern, from the pattern menu.
- X.IP "\fBCIRCLE\fP"
- XMove the mouse cursor to the center of the circle that you with to draw
- Xand hold down the LEFT mouse button, then while continuing to hold the LEFT
- Xmouse button down extend the cursor to the radius of the circle that you want
- Xand then release the LEFT mouse button.
- X.IP "\fBOVAL\fP"
- XLike \fBCIRCLE\fP except draws a oval.
- X
- X.IP "\fBPOLYGON\fP"
- XOnce this command is selected, move to the drawing area and press the LEFT mouse
- Xbutton when the cursor is at the first vertex of the polygon that
- Xyou wish to draw. Then continue to use the LEFT mouse button to select vertice
- Xof the polygon. When you have selected all of the vertice that you want, press
- Xthe RIGHT button to close the polygon.
- X.IP "\POLYGON FILLED\fP"
- XLike \fBPOLYGON\fP except it fills the polygon with the currently selected
- Xpattern from the pattern subwindow.
- X.IP "4)" 5
- XThe subwindow below the command subwindow, is the extra command subwindow. There are two possible
- Xwindows that will appear within this subwindow, the first is the brush size menu
- Xwhich is described in the PAINT command documentation. The other menu that
- Xwill appear in this subwindow is the Cut/Paste buffer command menu.
- XThis subwindow will only be visible when the SELECT REGION command is pressed.
- XThis menu has the following commands.
- X.IP "\fBMIRROR\fP"
- XThis command will create a mirror image of the currently
- Xselected region.
- X.IP "\fBFLIP\fP"
- XThis command will FLIP the currently selected region upside down.
- X.IP "\fBINVERSE\fP"
- XThis command will INVERSE the currently selected region.
- X.IP "\fBROTATE\fP"
- XThis command will ROTATE the currently selected region ninity degree
- Xclockwise.
- X.IP "\fBCOPY\fP"
- XThis command will place a copy of the currently selected region into the
- XCut/Paste buffer.
- X.IP "\fBPASTE\fP"
- XFirst use the SELECT POINT command to select the upper right hand corner
- Xof where you wish to place the Cut/Paste buffer. Then press the PASTE
- Xcommand icon and the contents of the current Cut/Paste buffer will be copied
- Xto the drawing area.
- X.IP "\fBMOVE\fP"
- XFirst use either COPY, CUT, or Load:Cut/Paste buffer to put an image into
- Xthe current Cut/Paste buffer. Once the MOVE command has been selected,
- Xmove the mouse to the drawing area and hold down the RIGHT mouse button.
- XAs long as the RIGHT mouse button is held down, you can position the image
- Xwhere you like. Then let go of the RIGHT mouse button to place a copy of
- Xthe image on the drawing area.
- X.IP "\fBCUT\fP"
- XThis command will place a copy of the currently selected region into the
- XCut/Paste buffer and then it will fill the selected region with the
- Xcurrently selected pattern.
- X.IP "5)" 5
- XThe last subwindow is the drawing area, which is in the center of the main
- Xwindow.
- X.RE
- X.SH "PRINTING FILES:"
- X.LP
- XSave a image out to a file and use the following Unix command to
- Xdump the image to a full page picture on an Apple Laser Writer or any
- Xother PostScript laser printer, where
- Xfile_name is the file name of an image created in Touchup.
- X
- X.LP
- XWhen the picture is wider than it is high use the following command:
- X
- X % pssun -s 8 10.5 -r file_name | lpr -Plw
- X
- X
- X.LP
- XWhen the picture is higher than it is wide use this command:
- X
- X % pssun -s 8 10.5 file_name | lpr -Plw
- X
- X.LP
- XWhen the picture is part of a document use this command:
- X
- X % pssun -S 6 -l 1.5 3 file_name | lpr -Plw
- X.LP
- XImages can also to sent to a IMPRESS laser printers with a command
- Xsimilar to the following, where "/u5/sr/local/bin/imPf2" is the location
- Xof the INPRINT program and "newcanon" is the name of the IMPRESS laser printer.
- X
- X % cat file_name | /u5/sr/local/bin/imPf2 | lpr -Pnewcanon
- X
- X
- X.SH "TYPICAL QUESTIONS:"
- X.IP "\fBHow do I select an area bigger than the drawing window ???\fP" 5
- X
- X.LP
- XFirst go to SELECT REGION mode then select one of the corners of the region with the LEFT mouse
- Xbutton. Then scroll the drawing area subwindow so that the other corner of the
- Xregion you want is now visible. Place the cursor on top of the
- Xother corner of the region you want and press the the MIDDLE
- Xmouse button.
- X
- X
- X.IP "\fBHow do I merge two different pictures in to one picture ???\fP" 5
- X.LP
- XWhen booting up Touchup the default drawing area is 1152 x 900,
- Xwhich is the full screen size of the Sun graphics screen. When
- Xyou load a new picture
- Xthe drawing area is restricted to the size of the picture that you loaded.
- XWhat you need to do is start up Touchup and load the first picture
- Xinto the Cut/Paste buffer by changing the cycle next to the load
- Xbutton from "Load: Entire image" to "Load: Cut/Paste buffer" and then
- Xpress the load button. The file will then be in the cut/paste
- Xbuffer and you can PASTE it or MOVE it to where ever you like.
- XThen load the second picture into the Cut/Paste buffer and PASTE that
- Xpicture where ever you like.
- X
- X
- X.IP "\fBHow do I make part of a picture into an icon ???\fP" 5
- X
- X.LP
- XUse a program such as the "The Portable Bitmap Toolkit" by Jef
- XPoskanzer(jef@lbl-rtsg.arpa)
- XThis can be ftped from zap.mit.edu, I also have a copy
- Xrolled out on tape if you do not have access to zap.mit.edu.
- X
- X
- X.IP "\fBHow do I convert other image format to Sun rasterfile format ???\fP" 5
- X.IP "\fBHow do I convert Sun rasterfile format to other image formats ???\fP" 5
- X
- X.LP
- XUse a program such as the "The Portable Bitmap Toolkit" by Jef
- XPoskanzer(jef@lbl-rtsg.arpa)
- XThis can be ftped from zap.mit.edu, I also have a copy
- Xrolled out on tape if you do not have access to zap.mit.edu.
- X
- X
- X.IP "\fBWhat does SAVE COMPRESSED mean ???\fP" 5
- X
- X.LP
- XThis means that the image will be saved out in the Sun rasterfile
- XBYTE_ENCODED format. This will often compress the file to one half
- Xof the normal size. One of the problems with saving a file in compressed
- Xformat is that 'screenload' command will then not be able to read the
- Xfile.
- X
- X
- X.SH FILES
- X\fI/usr/include/rasterfile.h\fP \- Sun raster file format
- X.SH SEE ALSO
- X.IR pssun (1),
- X.IR rastps (1),
- X.IR suntools (1),
- X.IR screendump (1),
- X.IR sceeenload (1)
- X.IR rasterfile (5)
- X.SH BUGS
- X.LP
- XTouchup has not been totally debugged for use with color images.
- X.LP
- XIf you try to FLOOD FILL an area that has a VERY complex pattern and covers
- Xa large area it is possible to over flow the stack and cause a core dump.
- X.SH Author
- X Ray Kreisel
- X Computer Science Department
- X SUNY at Stony Brook
- X Stony Brook NY 11794
- X.LP
- X UUCP: {allegra, philabs, pyramid, research}!sbcs!rayk
- X ARPA-Internet: rayk@sbcs.sunysb.edu
- X CSnet: rayk@suny-sb
- X.LP
- X"If I get home before daylight, I just might get some sleep tonight...."
- END_OF_touchup.man
- if test 17251 -ne `wc -c <touchup.man`; then
- echo shar: \"touchup.man\" unpacked with wrong size!
- fi
- # end of overwriting check
- fi
- if test -f fixman.sed -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"fixman.sed\"
- else
- echo shar: Extracting \"fixman.sed\" \(8 characters\)
- sed "s/^X//" >fixman.sed <<'END_OF_fixman.sed'
- Xs/_//g
- END_OF_fixman.sed
- echo shar: 1 control character \(a backspace\) may be missing from \"fixman.sed\"
- if test 8 -ne `wc -c <fixman.sed`; then
- echo shar: \"fixman.sed\" unpacked with wrong size!
- fi
- # end of overwriting check
- fi
- if test -f temp_image -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"temp_image\"
- else
- echo shar: Extracting \"temp_image\" \(6467 characters\)
- sed "s/^X//" >temp_image <<'END_OF_temp_image'
- Xbegin 644 info.image
- XM6:9JE0 :( #@ 0 $B( " " _P" _P" )@ #_H S
- XM !__P( R #?_\( R '___( Q & O^ ( P /___Z ( O # '__?_\( N
- XM ?_QX "__B +@ ?;_> O_V@"X .O[?@ /_@ " +0!W@ 7_8( M &^ !?_X
- XM@"T W_V !/_H@ 8 #( ) ( 8 ( ! 0 $!P.!R # !@ ;_^( " /Z
- XM @ $@ , .H $ ( ( ( " ( ,"(1"* # #OX %__B @"2@ ( !( #
- XM $: !@" " ! ! %!!$0B@ P !X &__R @"2'#&'1<8S< ""'#<<[<.
- XM .RX_ $!T$ $$$1"* # .@ ;__( " ! B$(C&(A&( ( (AB(1B"!&,0@
- XM @(P( $$$?#Z # ;^X &_X " !!!$)!$(A$$ ( 01!(1 """(0@ @0
- XM0( $",1"* # ?]X &_X 001"0!"(1! " $$01(0 @@B$( ($ "
- XM ! =()!@ P =^^ !O_ 001"0!"(1! " $$01(0 @@B$( ($ " !
- XM!()!@ P ;]^ !O_ 001"0!"(1! "!01!#! """(0@ @0 ( $ (@D&
- XM# #?OX &_^ ! B$8A$(C&( $(B&(,$ ($8A"( ! A! ! &,9C@ L ?]_
- XM@ ;_T ?!P.QXYQV7 /!P7 @\#X.G.' $!X$ ?#@?#Z "P !@ C_\( '
- XM & P 0 H " B @ " * $0 'WX '__" !P !@ , $ 2 @ (@ ( 0 $
- XM@!$ #[^ !__P@ < 8 # ! $@ ( $( 7 !_^@ ?_\( ' . ( " #@> !
- XMX( 7 'Z "/_X@"H ?8 (__B *@#W__> !O_P@"D >_^@ ?_^( I /__8 #
- XM_^J O_P@"D !X $__Z_W___^( # 0$ H . 0 . ( . > __?^_>
- XM O_P '' 0$ H # /@ !^ <8 2 @" ( . __^_O]>X "__W_
- XM^ @@ ! * P!$ (0( " (2 !0" ( . !__[__[5____MO_\ DFX<
- XM'X_!PW 1'. A#QS@ B-P<' _#@ & @ X '_??__;O@ 3__ DC$$! ("
- XM(8@ 1"$ "$0B$ "08B($$$1 @ " #@ __[___1V]_]O___P *H@! 0"!!$(
- XM '@A ^ "(0 +! 0000""" ( . #__?_?R]W^ !/\ *H@! 0"!_$( $02
- XM D#X2 T$!_! X/X( @ X ?___W^TI__]_O__^@ 1" $! ($ 0@ 0A(
- XM"(0A( "(0$ $ 8@ @ " #@!_^_^_^E=_ZO: O_ $0@! 0"! $( $(, B(
- XM(, B$! ! !( ( @ X ?_^_?]5:W___^___P !$( 0$0B(1" !"# (2
- XM (1 (0001"" ( . '___?^T)7;_[_?___ 1'@? X'!XYP _ @ '&>P@ !
- XMSO >'Q^#P^" #@!_^___=4ZM__VO___P@ H "( # ( @!< ?____N@16^N[
- XM?___[( * !" @ !@!@ ?_^[V])&M[]W[____( * !" @ !@!@ ?__WOV0(
- XM57;O7____( * 'B @ '@ " %P!__O_^R *6W;[[?__^@"@ /__?>U!1)5=M
- XMU____8 H '___^Z@ $JZ^[^ O^ * !___K=0@$0I^^ O_^@ " )P!__]?Z
- XMA "&5ZW@ +_@"@ ?___OJ@ $$:U[____H @"< ?__^Z8 " !"O7X "_X H
- XM '__U_Z@ ""$8 "__V * #___[5" !$9?___^@"@ @ +_^B "!"0M___
- XM_( H /___;1 @ 1 5O___X@"@ ___[Z00"0(BHG____( H ( "_[5(! $!
- XM E7___R * " O]J$ "!"B7?__X@"@ ___[]$ ( B"2O___( H ( "_TD
- XM$ !*)7___B )P !@ +_]$ ! 0"J____( G /___U)% ((502?__X@"<
- XM!___^[2@@ 0! %EO__X@"< !____M* P!*2G___( G ?___6MU00 ")"2
- XM[__Z@"< #X "_W4@( 1!6V___X /D @@ < 8 # ( X( & @! @ T
- XM#___]5J70 *1+O__X "$" #0" " & $0 ?___]]JH( !"?U___P (
- XM6.#@!8L.&EAAL <' "Q$L".#@ -'&QAPL" # ?___K6U3B $=UO___H
- XM"&0A$ 9,D29DD5 !"( ,D3(((1 $R)4D$,@@ P /___W>I5% "8JWW_O^
- XM A$(, $2!$B0'%0 08 (D2(((0 $2)4<$(@@ P @ +_NU2"R G5OO__Z
- XM A$(" $2!$B0)%0 0$ (D2(((0 $2)4D$(@@ P @ +_]= $*0 %(K> O\
- XM"$0A$ 9($29 D5 !"( ,DS(((1 $R)4D$(F@ L 8 "_^\D (( "-U*[WZ^
- XM@ (1"#@!8@.&D!I4 $' "PTL""#@ -'%1H0B* "P !__?_V<B !0 (1 3
- XMWO_]@ " P $ "@ 4 (( ) * "P !@ +_]R 5 !"("2]__^ ( # 0
- XM "* !0 @@ D !( + & O_=24E (1! W__?X $ 0 !R !0 @@!8 8 "
- XM__,2MI) " $__[NP( E & O_>05U @ "@E5%?O__ @"4 8 "_[*6JY0
- XM"2*$OWV_H( E '___WL!5\A05)>L7_[_^" )0 #@ +_M5590@HDMTK_]_]
- XM@"4 __[_^H$MQB@T2ZTK___\( E > O^T40I"229755___^" )0 '@ +_
- XM:H10$4!)/KI_]__0@"4 !X "_^@1 2*2LD54K___^( E > O_6H@ ")* :
- XMJ5_]_^@ 2 P 0 (0 !"" @ @@ , 8 , ?___ZH1 (DP% @!3__
- XM__@ 2 P 0 ( ( " 0 @!( " $& # '@ +_VH )$D)I0"J;___
- XM\ PL- &QA$ 6' !IP<>+'"Q$\.&@#PX ./%AQ8> "0 '@ +_M0A J)4 E?
- XM___H$C), 5)$0!DB )A"(@R$,D1!$F $$0!$09(F2( @ @ !X "_V@@A)4(
- XMJ"$BO___^ XB1 %1Q$ 1/ "(08((!")$0>(@!!$ 1$$3Q : "0 #___^TH((
- XM(E*B@ !*7___\!(B1 %21$ 1( "(0$((!")$00(@!!$ 1$$2! & "0 #@ +_
- XMU!00B4"L! %?___H$B), 5)$P!DB )A"(D@$,DQ)$F $D0!$21(D"( @ @
- XM ___^ZJ@0!*54)%*O___^ TB- %1HT 6' !H0<&(!"PT,.&@ PX .#$1Q >
- XM"@" O_9 ($E(6T 5___^B !0! @!\ ___W5$0$!(20)!2W___P@ 0 !$"
- XM'P" O_K$ @5(35!0J___^B ! #@ " 'P" O^80$ H % ("5___]" )@#_
- XM__MV@ (H +2)2?___\( F ( "_^D $@ J !7___T( F ( "_U0 !(
- XM%@1*O___X( F '___NJ "@ %0 @6___X @"8 ?__[V@ !( B@ %7___
- XM@ " )@!___^T "@ 10 "+___X @"8 /___Z0 !( (H 5___Z" )@ ]
- XM__]:$ I D@ DK___\" )@ ;__WP !! (( 7___X G ___ZH@1(I*J "
- XM7__^P( F ;___2 0$44 !/?__X G /__LD *1"* )+__]@ , <( %
- XM $ @ " !0" B ! " ( , /__] %*(BJ@ ___Z@ , $( % $& " (
- XM"( " ( @ T W_^I $C! 14 E?_[ ,' 0XL- #!P \6.#@ .'%B)8X-+
- XM'@!8<>.#AX + #_^Z@*3.@)J2!2__U@ $B( $1,DP!(B $&0A$ 1(F2)D(3,
- XMB !DB( A$B ( * #__M!0DP 05D0%O_- #A@ $1(D0 X8 $$0@P 0(D2)
- XM (1(B !$B( A ^ "P O_NB!JRJ@JD %7_H !($ !$2)$ 2! !!$( !@! B
- XM1(D A$B( $2(@ "$"( + #_]TA9*T44JM E_^ $B( $1(DP!(B $D0A$ 1
- XM(F29 (3(B0!$B)"$2( @ H /_^TB94""E7)0J_P -' 0XB- #1P ,1"#
- XM@ .'%AI (-(A@!$<&"#AX + #__Z1942!"*-@K?^( ' $" " ! " 0( 2
- XM #_^J@BID $RR84_\( & 1 @ @ 0(@ !$" $@ ?_?130@("158I=_" !@ #
- XM@ " " ! < #@ " $@ ?_\D4/510E*K"[^" *0 ?^_I2P( A2E5BU_P@"D
- XM&__4I!T)$%*B1?_@@"D '__J2"@ H6EJJ_ @"D /_^U$0J *@E=_P( I
- XM #__[$ 2 %4*KOP( I #_]^Q E@ "H)+7\" *0 __]9 @ 0 !4@EO_
- XM@"D >__\@ %1 %*A!7_P( I #?_^Q (D!"U("NOP( I &_^U* !(D((0!=_
- XMP( I '___P 2 "C &W_P( I '__^M 0:0!?_@ " *0!___: 0@ *
- XM[;_ @"D ?__M4 B $%01O_P( I '___X $ ($@!W_Z" !0! $@!\
- XM??^V: $ "1"K__P@ H ( !@!L .___D" A(4$$W__P 6'&QAPL. !PL
- XM>CP( : "___64 ! (*$3_?H &2)4D$,D0 0R()$1@!L .__[J * @0
- XM1?;_^ $#Q4<$(C 0B('$!@!L %___5"0044*37__8 0(%200B" 0B
- XM()$!@!L 'O__ZH H(4#7__\ $")4D$(D0 0B))$1(H : !7O^U@( "
- XM )/__] ! <5&A"(X !"(8:.#"@!H #]__]R )*B$FM__\@"D #O_?JD$2
- XM0(I-___\@"D #?__?1( "E";___\@"D #__]]L02H(,WO__\@"D #___[2@D
- XM"2IN___^@"D !__W_]$ HD3=___^@"D ___VJ11!)-[___^@"D W__OUJ$
- XM*"6O___^@"D O__>O4H@<U____^@"D __]_]21*A/6___^@"D ?___NMD
- XM46U____^@"D 7__^]R)I5/?[__^@"H __[OM;953KN___Z *@#__][[255;
- XM?W___H J /___=:VJM;_[__^@"D ?_^O_W-7;WVO__\@"D __]_=<ZMVOO
- XMW__\@"D !___^_WM[5_>?__X@"D !__]M]M;6_N_G__\@"D #__[?__V]J_\
- XMO__X@"D #__^[[;=W_][;__X@"D #__]/?_WOKWVO__P@"D #__Z[[;?^_O]
- XM5O_P@"D #__]6W_V__?BK__P@"D #__[5_;?WM_=7__@@"D '__\K6_V^__B
- XMM__@@"D '__[2][?_]]-7?_0@"D &__]5#W_]WJ2J__P@"D '__ZB>O]WM>I
- XM77WP@"D /__]4A?;_?XE-O]\@"D -__ZI5:_MZE)53_L@"D ?__]2"7W[5H2
- XMKD7<@"D ;__ZJHJM6K"E63__@"D ?__U0%$NI44(JT?]@"D _]_ZK0)52J@C
- XM5A?W@"D W__K4*0)(!$(K4+=@ " * #__]2%"*)%0B,J%;=@@"< ?__NW(@
- XM!(@0"E5#>/B )P !W__51$*H *1 JH ]]2 )P !__^JE(0 (@"+5@M<?( G
- XM '__U5I"$%$( I$+^[@"< ?O_JI(@A !%%=:A7E= @"8 ^_^561!" "
- XM "$) +^OX( F /?_:J(A !% 16 1_?N( F ?__A52 !" DA*0!OU6R
- XM)@ 'W_JJI)$B!! *2@"?JOJ )@ /O_Y2200 " @J0 O9=> )@ /__J-DB B
- XM"$""$@!.\KV )@ ?O_\R)$"$0($(Q 7Z7N )@ _?_Q*R00 0 2&0 OVO>
- XM)@!^_OL5$D@0! ( H@ &M5^ )@ =OY122( @0@$*A0 &^U]@"8 'VMM%5(0
- XG A 0* !5NK@"8 #=[:*H2A$ 0"0@ $O=_@/\ @/\ @/\ @$P
- X
- Xend
- END_OF_temp_image
- if test 6467 -ne `wc -c <temp_image`; then
- echo shar: \"temp_image\" unpacked with wrong size!
- fi
- # end of overwriting check
- fi
- if test -f touchup.icon -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"touchup.icon\"
- else
- echo shar: Extracting \"touchup.icon\" \(1933 characters\)
- sed "s/^X//" >touchup.icon <<'END_OF_touchup.icon'
- X/* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
- X */
- X 0xFFFF,0xFFFF,0xFFFF,0xFFFF,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0011,0x8000,0x0000,0x0030,0x1011,
- X 0x800E,0x0010,0x1078,0x1011,0x8078,0x1C10,0x104C,0x1011,
- X 0x81C0,0x2410,0x1040,0x1011,0x8F00,0x2308,0x0840,0x1011,
- X 0xF400,0x4108,0x0840,0x0811,0xC400,0x4088,0x0C40,0x09F9,
- X 0x8200,0x4088,0x0C40,0x0709,0x8300,0x804C,0x0C40,0x0C09,
- X 0x8100,0xC044,0x0440,0x080D,0x8180,0xC042,0x0460,0x080D,
- X 0x8080,0x4042,0x0831,0x8419,0x80C0,0x40C1,0x900F,0x0419,
- X 0x8040,0x4180,0x6000,0x0401,0x8020,0x3F00,0x0000,0x0001,
- X 0x8050,0x0000,0x0000,0x0001,0x8030,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x4FFC,0x0001,0x8000,0x0200,0x7006,0x0001,
- X 0x8008,0x0200,0x6002,0x0001,0x8008,0x0200,0x2002,0x0001,
- X 0x8008,0x0100,0x2002,0x0001,0x8008,0x0100,0x2002,0x0001,
- X 0x8008,0x0080,0x2006,0x0001,0x8008,0x0080,0x23F8,0x0001,
- X 0x8008,0x0080,0x2600,0x0001,0x8008,0x0080,0x2C00,0x0001,
- X 0x8008,0x0080,0x3000,0x0001,0x8008,0x0080,0x1000,0x0001,
- X 0x800C,0x0080,0x1000,0x0001,0x8004,0x0080,0x1000,0x0001,
- X 0x8004,0x0080,0x1000,0x0001,0x8002,0x0700,0x1800,0x0001,
- X 0x8003,0x7A00,0x0000,0x0001,0x8001,0x8000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0x8000,0x0000,0x0000,0x0001,
- X 0x8000,0x0000,0x0000,0x0001,0xFFFF,0xFFFF,0xFFFF,0xFFFF
- END_OF_touchup.icon
- if test 1933 -ne `wc -c <touchup.icon`; then
- echo shar: \"touchup.icon\" unpacked with wrong size!
- fi
- # end of overwriting check
- fi
- if test -f fat_cursor -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"fat_cursor\"
- else
- echo shar: Extracting \"fat_cursor\" \(193 characters\)
- sed "s/^X//" >fat_cursor <<'END_OF_fat_cursor'
- X/* Format_version=1, Width=16, Height=16, Depth=1, Valid_bits_per_item=16
- X */
- X 0xFF80,0xFF00,0xF800,0xFC00,0xFE00,0xDF00,0xCF80,0xC7C0,
- X 0x83E0,0x01F0,0x00F8,0x007C,0x003E,0x001C,0x0008,0x0000
- END_OF_fat_cursor
- if test 193 -ne `wc -c <fat_cursor`; then
- echo shar: \"fat_cursor\" unpacked with wrong size!
- fi
- # end of overwriting check
- fi
- if test -f strip_icon32x32 -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"strip_icon32x32\"
- else
- echo shar: Extracting \"strip_icon32x32\" \(435 characters\)
- sed "s/^X//" >strip_icon32x32 <<'END_OF_strip_icon32x32'
- X#!/bin/sh
- X# This shell script will strip an 64x64 icon down to 32x32 to be used
- X# as a filling pattern in Touchup
- Xfor patterns in ` ls pattern[0-9].icon; ls pattern[0-9][0-9].icon; ls brush[0-9].icon `
- Xdo
- Xecho "Stripping $patterns..."
- Xawk '
- XBEGIN { FS = "," }
- XNR == 1,NR == 2 { print }
- XNR < 18 && NR > 2 { printf "%s,%s,%s,%s,\n", $1, $2, $5, $6 }
- XNR == 18 { printf "%s,%s,%s,%s\n", $1, $2, $5, $6 }
- X' $patterns > ${patterns}.pat
- Xdone
- END_OF_strip_icon32x32
- if test 435 -ne `wc -c <strip_icon32x32`; then
- echo shar: \"strip_icon32x32\" unpacked with wrong size!
- fi
- chmod +x strip_icon32x32
- # end of overwriting check
- fi
- if test -f strip_icon48x48 -a "${1}" != "-c" ; then
- echo shar: Will not over-write existing file \"strip_icon48x48\"
- else
- echo shar: Extracting \"strip_icon48x48\" \(405 characters\)
- sed "s/^X//" >strip_icon48x48 <<'END_OF_strip_icon48x48'
- X#!/bin/sh
- X# This shell script will script an 64x64 icon down to 48x48 to be used
- X# as a command icons in Touchup
- Xfor patterns in ` ls *.cicon `
- Xdo
- Xecho "Stripping $patterns..."
- Xawk '
- XBEGIN { FS = "," }
- XNR == 1,NR == 2 { print }
- XNR < 26 && NR > 2 { printf "%s,%s,%s,%s,%s,%s,\n", $1, $2, $3, $5, $6, $7 }
- XNR == 26 { printf "%s,%s,%s,%s,%s,%s\n", $1, $2, $3, $5, $6, $7 }
- X' $patterns > ${patterns}.pat
- Xdone
- END_OF_strip_icon48x48
- if test 405 -ne `wc -c <strip_icon48x48`; then
- echo shar: \"strip_icon48x48\" unpacked with wrong size!
- fi
- chmod +x strip_icon48x48
- # end of overwriting check
- fi
- echo shar: End of archive 1 \(of 6\).
- cp /dev/null ark1isdone
- MISSING=""
- for I in 1 2 3 4 5 6 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 6 archives.
- rm -f ark[1-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
-